The Design and Construction of a User - Level Kernel forTeaching Multithreaded

نویسندگان

  • Michael J. Bedy
  • Steve Carr
  • Xianglong Huang
  • Ching-Kuang Shene
چکیده

| Multithreading is a powerful programming paradigm that has become very popular in recent years. The authors have developed a set of course materials and software tools for eeectively teaching multithreaded programming (MTP). One important component of the au-thors' system is a very simple user-level kernel for instructors to teach MTP without getting into system details , and for the students to add extensions. This paper presents the design and implementation of this kernel as well as its use in the classroom. This minimal user-level kernel employs a rst-come-rst-served scheduling policy , and permits a user to create and join threads, and use mutex locks. With this kernel, students are able to implement semaphores, barriers, reader-writer locks, mailboxes and condition variables. This approach has two advantages: (1) students can easily learn the basics and internal of a kernel that supports MTP, and (2) conventional debuggers can be used for debugging purposes, because the kernel is a user-level program.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Design and Construction of a User - Level Kernel

| Multithreading is a powerful programming paradigm that has become very popular in recent years. The authors have developed a set of course materials and software tools for eeectively teaching multithreaded programming (MTP). One important component of the au-thors' system is a very simple user-level kernel for instructors to teach MTP without getting into system details , and for the students...

متن کامل

Design, Construction and Performance Evaluation of the Walnut Cracking Machine

The traditional method in Iran of cracking walnut manually, using harmer or knife cutter is laborintensive, slow and tedious; besides, most mechanical crackers do not give satisfactory results in terms of kernel extraction quality. A prototype machine was developed to crack walnut. A walnut cracker was designed, constructed and tested to evaluate its performance. The cracker, which consists of ...

متن کامل

User-Level Threads and Interprocess Communication

User-level threads have performance and exibility advantages over both Unix-like processes and kernel threads. However, the performance of user-level threads may su er in multiprogrammed environments, or when threads block in the kernel (e.g., for I/O). These problems can be particularly severe in tasks that communicate frequently using IPC (e.g., multithreaded servers), due to interactions bet...

متن کامل

Runtime Performance Analysis of the M - to - N Scheduling

The popular M-toN thread scheduling model multiplexes many user-level threads on top of fewer kernel-level threads. While this model is designed to be scalable and eecient without excessive resource consumption, we isolate several elementary examples under which the M-toN model exhibits highly nonintuitive performance. We use a runtime performance monitor for multithreaded programs which we hav...

متن کامل

A two-level multithreaded Delaunay kernel

This paper presents a fine grain parallel version of the 3D Delaunay Kernel procedure using the OpenMP (Open Multi-Processing) API. A set S = {p1, . . . , pn} of n points is taken as input. S is initially sorted along a space-filling curve so that two points that are close in the insertion order are also close geometrically. The sorted set of point is then divided into M subsets S i, 1 ≤ i ≤ M ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999